package desibo;

import java.text.DecimalFormat;

public class Postulante implements Comparable<Postulante> {
	
    private String apellidoNombre;
    private String detallePostulante;
  
    private Float promedioGeneral;
    private Float puntaje;

    private Integer materiasAprobadas;
    
    private boolean isAptoBeca;
    
    public Postulante() {
		this.apellidoNombre = "";
		this.detallePostulante = "";
		
		this.promedioGeneral = new Float( 0 );
		this.puntaje = new Float( 0 );

		this.materiasAprobadas = new Integer( 0 );
		
		this.isAptoBeca = true;
	}
    
    public Postulante( String apellidoNombre, String detallePostulante, Float promedioGeneral, Float puntaje, Integer materiasAprobadas, boolean isAptoBeca ) {
		this.apellidoNombre = apellidoNombre;
		this.detallePostulante = detallePostulante;
		
		this.promedioGeneral = promedioGeneral;
		this.puntaje = puntaje;
		
		this.materiasAprobadas = materiasAprobadas;
		
		this.isAptoBeca = isAptoBeca;
	}

	public String getApellidoNombre() {
		return this.apellidoNombre;
	}

	public void setApellidoNombre( String apellidoNombre ) {
		this.apellidoNombre = apellidoNombre;
	}

	public String getDetallePostulante() {
		return this.detallePostulante;
	}

	public void setDetallePostulante( String detallePostulante ) {
		this.detallePostulante = detallePostulante;
	}

	public Float getPromedioGeneral() {
		return this.promedioGeneral;
	}
	
	public String getPromedioGeneralFormat() {
	    DecimalFormat format = new DecimalFormat( "0.0" );
	    
	    return String.valueOf( format.format( this.getPromedioGeneral() ) );
	}

	public void setPromedioGeneral( Float promedioConGeneral ) {
		this.promedioGeneral = promedioConGeneral;
	}

	public Float getPuntaje() {
		return this.puntaje;
	}
	
	public String getPuntajeFormat() {
	    DecimalFormat format = new DecimalFormat( "0.00" );
	    
	    return String.valueOf( format.format(this.getPuntaje() ) );
	}

	public void setPuntaje( Float puntaje ) {
		this.puntaje = puntaje;
	}
	
	public Integer getMateriasAprobadas() {
		return materiasAprobadas;
	}
	
	public void setMateriasAprobadas( Integer materiasAprobadas ) {
		this.materiasAprobadas = materiasAprobadas;
	}

	public boolean getIsAptoBeca() {
		return this.isAptoBeca;
	}

	public void setIsAptoBeca( boolean isAptoBeca ) {
		this.isAptoBeca = isAptoBeca;
	}

	public int compareTo( Postulante postulante ) {
        return this.puntaje.compareTo( postulante.getPuntaje() );
    }
}